package com.zhihuishu.micro.course.service;
import java.rmi.RemoteException;
import java.util.List;
import java.util.Map;

import com.zhihuishu.micro.course.model.CourseTimePlan;
import com.zhihuishu.micro.course.model.TblCourse;

/**
 * 课程管理接口
 * @author	ylj
 */
public interface CourseManagementService {
	
	/**
	 * 查询总数
	 * @author ylj
	 * @param keywords
	 * @param userId
	 * @return
	 * @throws RemoteException
	 */
	Integer findCourseDtoTotalCount(String keywords, Long userId); 
	/**
	 * 查询课程信息分页
	 * @author ylj
	 * @param keywords
	 * @param pageNo
	 * @param pageSize
	 * @return
	 * @throws RemoteException
	 */
	List<TblCourse> findPageCourseDtos(String keywords, int pageNo, int pageSize, Long userId);
	/**
	 * 根据课程id查询课程计划表
	 * @author yulijin
	 * @date 2016年7月19日 下午1:27:24
	 * @param courseId
	 * @return
	 */
	List<CourseTimePlan> findCourseTimePlanByCourseId(Long courseId);
    /**
     *     
     * @author yulijin
     * @date 2016年7月19日 下午1:28:52
     * @param courseId
     * @return
     */
	TblCourse findCourseOpenByCourseId(Long courseId);

	/**
	 * 根据课程ID集合获取课程时间计划最近更新时间
	 * @author ztl
	 * @param courseIds
	 * @return
	 */
	List<Map<String, Object>> getcourseTimePlanUpdateTimeByCourseIds(List<Long> courseIds);
}
